//登录界面各输入框的验证代码
$(function() { // 1 获取页面上的对象
	var username = $("#username");// input text 用户名输入框
	var uCheck = $("#usernameCheck");

	var realname = $("#realname");
	var realCheck = $("#realnameCheck");

	var password = $("#password");
	var pCheck = $("#passwordCheck");

	var rePassword = $("#rePassword");
	var rpCheck = $("#rePasswordCheck");

	var mobile = $("#mobile");
	var mCheck = $("#mobilCheck");

	var email = $("#email");
	var eCheck = $("#emailCheck");

	var register = $("#register");

	var uId = $("#uId");
	var title = $("#title");

	if (uId.val() != 0) {
		username.attr("disabled", true);
		title.html("用户编辑");
	} else {
		username.attr("disabled", false);
		title.html("用户新增");
	}
	
	
	
	$("#cancel").click(function() {
		// window.opener = null;
		// window.returnValue = 'ok';
		//window.close();
	});

	// 用户名框输入完毕离开后，ajax验证是否有同名用户的存在
	username.blur(function() {
		if ($.trim(username.val()) == "") {
			uCheck.html("请输入用户名！").css({
				color : "red"
			});
			username.focus();
			return;
		} else {
			uCheck.html("");
		}
		$.ajax({// 验证用户名是否存在
			type : 'post',
			url : 'userManageServlet?method=isExist',
			data : {
				username : username.val()
			},
			dataType : 'json',
			success : function(data) {
				if (data.flag == "yes") {
					uCheck.html("此用户名已被占用，请重新选择用户名！").css({
						color : "red"
					});
					// 这里要如何处理让同名的修改无效，焦点始终停留在用户名输入框
				} else {
					uCheck.html("此用户名可以注册！").css({
						color : "blue"
					});
				}
			},
			error : function() {
				alert("注册异常");
			}
		});
	});

	// 新增/修改按钮单击事件
	register.click(function() {
		// 验证用户名的输入是否为空
		if ($.trim(username.val()) == "") {
			uCheck.html("请输入用户名！").css({
				color : "red"
			});
			username.focus();
			return;
		} else {
			uCheck.html("");
		}
		// 验证中文名
		var reg = /[\u4e00-\u9fa5]/;// 正则表达式
		if (!reg.test(realname.val())) {
			realCheck.html("请输入中文").css({
				color : "red"
			});
			realname.focus();
			return;
		} else {
			realCheck.html("");
		}

		// 验证密码
		if ($.trim(password.val()) == "") {
			pCheck.html("请输入密码！").css({
				color : "red"
			});
			password.focus();
			return;
		} else {
			pCheck.html("");
		}

		// 验证密码
		if (rePassword.val() != password.val()) {
			rpCheck.html("二次密码不一致").css({
				color : "red"
			});
			return;
		} else {
			rpCheck.html("");
		}

		// 验证手机号码
		var reg = /1\d{10}/;// 正则表达式
		if (!reg.test(mobile.val())) {
			mCheck.html("请输入1开关的11位手机号").css({
				color : "red"
			});
			mobile.focus();
			return;
		} else {
			mCheck.html("");
		}

		// 验证邮箱
		var reg = /\w+[@]\w+[.]\w+/;// 正则表达式
		if (!reg.test(email.val())) {
			eCheck.html("请正确输入邮箱").css({
				color : "red"
			});
			email.focus();
		} else {
			eCheck.html("");
			// ajax去处理添加或修改, 根据页面uId隐藏域是否有值，判断是增加还是更新
			if ($("#uId").val() == 0)
				doAdd();
			else {
				doUpdate();
			}
		}
	});

	function doUpdate() {
		$.ajax({
			type : 'post',
			url : 'userManageServlet?method=update',
			data : {
				uId : uId.val(),
				// username : username.val(),//用户不能修改用户名
				realname : realname.val(),
				password : password.val(),
				mobile : mobile.val(),
				email : email.val()
			},
			dataType : 'json',
			success : function(data) {
				if (data.flag == "yes") {
					alert("修改成功");
					// 重新发数据请求，相当于刷新
					//window.close();
					 location.href = "userManageServlet?method=show";
					//location.reload(true);
				}
			},
			error : function() {
				alert("修改异常");
			}
		});
	}

	function doAdd() {
		$.ajax({
			type : 'post',
			url : 'userManageServlet?method=add',
			data : {
				username : username.val(),
				realname : realname.val(),
				password : password.val(),
				mobile : mobile.val(),
				email : email.val()
			},
			dataType : 'json',
			success : function(data) {
				if (data.flag == "yes") {
					alert("新增成功");
					// 重新发数据请求，相当于刷新
					location.href = "userManageServlet?method=show";
				} else {
					alert("新增失败，有可能存在同名，请检查！");
				}
			},
			error : function() {
				alert("新增异常");
			}
		});
	}
});
